1. Field of the Invention
The present invention relates to an apparatus and method for processing data across a computer network. More particularly, the present invention relates to a method for processing data wherein Hyper-Text Markup Language (HTML)-based forms having special program object tags are used to interact with program objects and a database responsive to those special attributes.
2. The Background Art
Recently, it has become quite common for a user of a networked computer to retrieve information contained within a database, such as when using an Internet search tool to locate network nodes containing information regarding a common subject matter, or to provide new data for inclusion into the database, such as when signing up for a mailing list or when registering for a drawing.
In order to retrieve data from a database, a user must typically provide certain information that the particular database recognizes and understands, and information which causes the proper search to be executed so that results of that search may later be transmitted to and displayed for the user. One way to ensure that the proper information is provided by the user involves using forms which by their nature inform the user as to what type of information is required, and which contain areas (as in a monitor screen) for providing that information. Once the proper information is provided, the database is queried, and any data resulting from that query is transmitted to and displayed for the user.
It is typical that a user of a client computer use a program called a web browser to display information transmitted to that client computer from other computers on a network, such as computers on the Internet. A web browser is a program on the client computer which receives network information from external sources, and typically displays that information to a user of the client computer. Examples of common web browsers include Netscape 3.0, available from Netscape Communications of Mountain View, Calif., and Internet Explorer, available from Microsoft Corporation of Seattle, Washington.
Information intended for use in a web browser typically contains descriptors defined in the Hyper-Text Markup Language (HTML), a language that web browsers routinely interpret.
FIG. 1 is a flow chart depicting the flow of information in a prior art method for querying a database and then providing the results of that output to a user.
Referring to FIG. 1, at step 10 a form suitable for requesting data from a database is provided to the user, and information relevant to the query of that database is entered by the user into the form. It is common for forms used across networks to be written in HTML, because these forms may then be easily transmitted as text across a network for display at locations remote from the server which originated the form.
At step 12, the query information supplied by the user is transmitted to a server computer, and is processed by a Common Gateway Interface (CGI) program, typically resident on a server computer. The primary function of a CGI program is to take output from one program and format that output so that it may be recognized as proper input to another program, hence the term "gateway". Here, the CGI program takes query data in HTML form, and converts that query information into a format which will be readily recognized by the database program. One such format in common use is the Structured Query Language (SQL) used in modern databases. If the database is of the type which recognizes SQL, the CGI program would be written to convert the HTML-based user input into SQL. The data, when transmitted to the database, would result in a valid search being performed.
At step 14, the database processes the SQL query and outputs the results to the CGI program. At step 16, the output of the database is converted to HTML format for ease of transmission and display. At step 18, the HTML information is transmitted from the server computer to the client computer, and at step 20, the HTML information containing the results of the database query is displayed on the client computer using a program suitable for that purpose such as a web browser as previously described.
Although useful for its intended purposes, this prior art method fails to provide intelligent interaction between a work flow, a database, and other users. It would therefore be beneficial to provide a system wherein a user provides data through an intelligent interface to a program object which combines that data with other data in the system and then evaluates that data against one or more rules to determine a work flow path.
For instance, in a medical scenario such as that described in copending application Ser. No. 08/546,048, wherein a physician performs three tests to determine whether a sore throat is caused by bacteria or whether it is viral, the third test may not be available for 24 hours. In this instance, the result node is split, thus allowing the diagnosis and treatment to proceed based upon the preliminary data available at the time of the first visit. When the results for the third test arrive 24 hours later, a program object receiving data from a user of the system determines that all testing is complete and then, in addition to updating the database, provides information to the treating physician so that the preliminary diagnosis may be adjusted as necessary. In the prior art, the new data would be input to the database with no determination that the desired tests are complete or notification to the treating physician.